package tool.workflow.soft

import java.io.File
import command.CommandExec
import tool.Pojo._

/**
 * Created by yz on 30/10/2020
 */
object AllSubSoft {

  val softs = List(NaIdentify, ColRemove, RowRemove, QcFilter, VarMerge, NaFill, Normal, Loess, Transform, InnerNormal,
    ExtraNormal, LevelRemoveRow, Standard,RemoveQc)

  val kindSoftMap = softs.map { x =>
    (x.nameStr, x)
  }.toMap

  trait SubSoftBT {

    def exec(workspaceDir: File, resultDir: File, si: String): CommandExec[Any, Boolean]

    def getCommandData(workspaceDir: File, resultDir: File, si: String): CommandData

    def getCommand(si: String): String = {
      ""
    }

    def execAfterCommand(workspaceDir: File, resultDir: File, si: String): Unit = {

    }


  }


}
